# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:张广勤
@Web site: https://www.tunan.wang
@Github:www.github.com
 
@File:yi_class_quanwen_yiwen2_0.py
@Time:2024/9/13 14:13

@Motto:不积跬步无以至千里，不积小流无以成江海！
"""

def read_file_and_create_dict(filename, k64):
    # 初始化一个空字典
    tuan_dict = {}

    # 初始化变量
    current_key_index = 0
    value = []

    # 使用with语句安全地打开文件
    with open(filename, 'r', encoding='utf-8') as file:
        # 逐行读取文件
        for line in file:
            # 去除行首尾的空白字符
            clean_line = line.strip()
            # 检查是否包含“彖传原文”
            if clean_line.startswith('第'):
            # if "彖传原文" in clean_line:
                # 如果已经存在value列表，则将当前value列表添加到字典中
                if value:
                    tuan_dict[k64[current_key_index - 1]] = value
                    value = []  # 重置value列表
                # 更新current_key_index为下一个键
                current_key_index += 1
                # 将当前行也作为值的一部分
                tuan_dict[k64[current_key_index - 1]] = [clean_line]
            else:
                # 如果当前行不是“彖传原文”，添加到value列表
                value.append(clean_line)

    # 循环结束后，添加最后一个value列表到字典中
    if value and current_key_index <= len(k64):
        tuan_dict[k64[current_key_index-1]] = value

    return tuan_dict

# 64卦的列表
k64 = [
    '乾', '坤', '屯', '蒙', '需', '讼', '师', '比', '小畜', '履', '泰', '否',
    '同人', '大有', '谦', '豫', '随', '蛊', '临', '观', '噬嗑', '贲', '剥',
    '复', '无妄', '大畜', '颐', '大过', '坎', '离', '咸', '恒', '遁', '大壮',
    '晋', '明夷', '家人', '睽', '蹇', '解', '损', '益', '夬', '姤', '萃',
    '升', '困', '井', '革', '鼎', '震', '艮', '渐', '归妹', '丰', '旅', '巽', '兑',
    '涣', '节', '中孚', '小过', '既济', '未济'
]

# 调用函数并传入文件名和64卦列表
# filename = 'tuan_quanwen.txt'
filename = './yi/易全文及译文.txt'
baihua_dict = read_file_and_create_dict(filename, k64)

# # 打印字典中的所有项
# for key in baihua_dict:
#     print(f"Key: {key}")
#     for line in baihua_dict[key]:
#         print(f"  {line}")
